Iterative Computations with Ordered Read-write Locks Iterative Computations with Ordered Read-write Locks Iterative Computations with Ordered Read-write Locks
نویسندگان
چکیده
We introduce the framework of ordered read-write locks, ORWL, that are characterized by two main features: a strict FIFO policy for access and the attribution of access to lock-handles instead of processes or threads. These two properties allow applications to have a controlled pro-active access to resources and thereby to achieve a high degree of asynchronicity between different tasks of the same application. For the case of iterative computations with many parallel tasks which access their resources in a cyclic pattern we provide a generic technique to implement them by means of ORWL. We show that the possible execution patterns for such a system correspond to a combinatorial lattice structure and that this lattice is finite iff the configuration contains a potential deadlock. In addition, we provide efficient algorithms: one that allows for a deadlock-free initialization of such a system and another one for the detection of deadlocks in an already initialized system. Key-words: synchronization, iterative algorithms, read-write locks in ria -0 03 30 02 4, v er si on 1 13 O ct 2 00 8 Calculs itératifs avec des verrous ordonnés de lecteur/écriture Résumé : Nous présentons la structure des verrous ordonnés de lecture/écriture, ORWL, qui sont caractérisés par deux fonctionnalités principales : une politique d’accès FIFO stricte et une attribution des accès à des gestionnaires de verrou plutôt qu’à des processus ou des threads. Ces deux propriétés permettent aux applications d’avoir un contrôle dynamique de l’accès aux ressources et donc de parvenir à un haut niveau d’asynchronisme entre les différentes tâches d’une même application. Dans le cas de calculs itératifs avec beaucoup de tâches parallèles accédant à leurs ressources selon un motif cyclique, nous proposons une technique générique d’implémentation avec des ORWL. Nous montrons que les schémas d’exécution possibles pour un tel système forment un treillis combinatoire et que ce treillis est fini si et seulement si la configuration contient un interblocage potentiel. De plus, nous proposons deux algorithmes efficaces : l’un pour une initialisation sans interblocage d’un tel système et l’autre pour la détection d’interblocage dans un système déjà initialisé. Mots-clés : synchronisation, algorithmes itératifs, verrous lecture/écriture in ria -0 03 30 02 4, v er si on 1 13 O ct 2 00 8 Iterative Computations with Ordered Read-Write Locks 3
منابع مشابه
Relaxed Synchronization with Ordered Read-Write Locks
This paper promotes the first stand-alone implementation of our adaptive tool for synchronization ordered read-write locks, ORWL. It provides new synchronization methods for resource oriented parallel or distributed algorithms for which it allows an implicit deadlock-free and equitable control of a protected resource and provides means to couple lock objects and data tightly. A typical applicat...
متن کاملPessimistic Software Lock-Elision
Read-write locks are one of the most prevalent lock forms in concurrent applications because they allow read accesses to locked code to proceed in parallel. However, they do not offer any parallelism between reads and writes. This paper introduces pessimistic lock-elision (PLE), a new approach for nonspeculatively replacing read-write locks with pessimistic (i.e. non-aborting) software transact...
متن کاملImplementing Byte-Range Locks Using MPI One-Sided Communication
We present an algorithm for implementing byte-range locks using MPI passive-target one-sided communication. This algorithm is useful in any scenario in which multiple processes of a parallel program need to acquire exclusive access to a range of bytes. One application of this algorithm is for implementing MPI-IO’s atomic-access mode in the absence of atomicity guarantees from the underlying fil...
متن کاملDistributed Lock Management for Mobile Transactions
In a mobile computing environment, a user carrying a portable computer can execute a mobile transaction by submitting the operations of the transaction to distributed data servers from different locations. The mobility of transaction hosts introduces new issues concerning the efficiency of transaction lock management in the distributed data servers. For example, even in a fully replicated datab...
متن کاملA Variable Cache Consistency Protocol for Mobile Systems Using Time Locks
By locally caching data, mobile hosts can operate while disconnected from the central server, however, consistency of data becomes more difficult to maintain. In this paper we propose a protocol that makes a distinction between two classes of consistency: weak and strict, and treats them differently. Strict consistency is used for data that needs to be consistent all the time, whereas weak cons...
متن کامل